package com.happok.onlineclass.usermanagement.feign.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;
import java.util.Map;

@Data
@ApiModel(description = "表单记录列表查询Bean")
public class RecordListQuery extends PageSortQuery {

    public final static RecordListQuery EMPTY = new RecordListQuery();

    /**
     * 字段分组
     */
    @ApiModelProperty(value = "字段分组", required = false, position = 0)
    private String group;

    /**
     * 表单记录id列表
     */
    @ApiModelProperty(value = "表单记录id列表", required = false, position = 1)
    private List<String> recordIds;

    /**
     * 表单记录的关联id列表
     */
    @ApiModelProperty(value = "表单记录的关联id列表", required = false, position = 2)
    private List<Object> referenceIds;

    /**
     * 按需返回字段列表
     */
    @ApiModelProperty(value = "按需返回字段列表，与onlyReturnReferenceIds不能同时为true", required = false, position = 3)
    private List<String> returnFields;

    /**
     * 按需返回字段列表
     */
    @ApiModelProperty(value = "是否在list中只返回referenceId值，与onlyReturnReferenceIds不能同时为true", required = false, position = 4)
    private Boolean onlyReturnReferenceIds;

    /**
     * 筛选条件参数，键值对
     */
    @ApiModelProperty(value = "筛选条件参数，键值对", required = false, position = 5)
    private Map<String, Object> filterParams;
}